23

» WarCraft 3 / Следовать за юнитом триггерно?

Похожие вопросы:

ответ
Ну только триггерные системы отрядов, была такая...
Вот пример ссылочка
Были и другие, поиск в помощь.
Вот еще ссылка
ответ
А морф обычный не подходит?

23

» WarCraft 3 / Английский редактор

Похожие вопросы:

ответ
~8gabriel8:
Попробуй в Редакторе объектов нажать Ctrl+D.
ответ
orix, когда в каком. Было бы полезно будь это какая-то особая, уличная, прога. Но оказывается вопрос был о том как в блендере язык поменять... Это не та информация с поиском которой могут даже потенциально возникнуть проблемы. Коммент скрыл из-за ссылки на портал третьей стороны, не имеющей никакого отношения к программе о которой шла речь.
ответ
Я ж ведь не просто так пишу, правда?
какое отношение этот пункт имеет к проблеме?
короче покопался в wtg файле
у тебя раньше использовался какой то странный файл гуишных функций
скорее всего он лежал либо в папке с вар3, либо в папке с джнгп и потом его удалили
одна из функций (возвращает булеан) вообще была представлена как набор пробелов
узнавать что это была за функция мне было лень поэтому я её заменил на false (использовалась в условии)
это было в триггере ctart, так что поправь там условие
так же заменил IssueImmediateOrderBJ на IssueImmediateOrder
вот открываемая в редакторе карта
проверь все гуишные триггеры на предмет ошибок
ответ
Просто юзай инг редактор, я вообще удивляюсь, зачем всё это переводили - перевести нормально так и не смогли. Часть полей называется как-то адово, даже не близко к реальности
ответ
PT153, Я не увидел, да, так лучше будет. Нужно удалить umswe/umswe.mpq

23

» WarCraft 3 / помощь со скиллом

Похожие вопросы:

ответ
ахах, ответ в самом вопросе. Создать скилл сопротивление магии с 10ю уровнями, дать его юниту, выставить нужные значения на каждом уровне скилла.
ответ
Проблема решилась написанием SquareRoot в формуле вычисления дистанции. Странно, что в другом скилле мною эта формула использовалась с этой же ошибкой (SquareRoot не писал, забывал, наверное, из-за неопытности), но при этом все работало нормально... Мистика какая-то. Но буду признателен за другие предложения по оптимизации кода))
ScopteRectuS:
Покажите лучше карту, пока руками не потрогаешь, сложно сказать где проблема.
И да, так как углы известны уже заранее, то можно сразу же посчитать их:
local real point_1_x = target_x + 300.00 * Cos(0.00*bj_DEGTORAD)
local real point_1_y = target_y + 300.00 * Sin(0.00*bj_DEGTORAD)
>>>>
local real point_1_x = target_x + 300.00 * 1.0
local real point_1_y = target_y + 300.00 * 0.0
>>>>
local real point_1_x = target_x + 300.00
local real point_1_y = target_y + 0.00
>>>>
local real point_1_x = target_x + 300.00
local real point_1_y = target_y
Благодарю, проблему нашел. Всегда так, когда в отчаянии на форум бегу - дак тут же проблему увидел, а до этого - хрен)
ответ
Так-то тут нужен двумерный массив, индексер тут не нужен.
ответ
Не обязательно. Карта.

23

» WarCraft 3 / Объясните код

Похожие вопросы:

ответ
Black Soul:
ArhiMEN:
Я посмотрел, но возникла проблема. Я тупой и не могу написать также, но моменте добаления юнита в хеш таблицу. Я Save Handle of (Last created unit) as 0 of (а дальше я не нашёл, как добавть "Key(Constructed structure))" in Hash
и соответсвенно любое другое действие, где прописанно Key
Так не нужно ничего самому делать. Я прикрепил к тому сообщению карту. В ней я уже все сделал сам. Тебе осталось только скопировать триггеры оттуда в свою карту и заменить юнитов на тех, которые тебе нужны. Вот та карта:
Bergi_Bear, хеш-таблицы — это проще простого. Они не требуют множество действий для работы. Достаточно только понять принцип.
ответ
Drulia_san, посмотрел код, если this есть 0 в обычном методе, то это значит, что там где ты вызываешь Restore для StructuresSnapshot ты передаешь 0.
call obj.Restore()  // obj равен 0, а его тип есть StructuresSnapshot.
ответ
Ответ выше - для стандартного редактора WE. Однако, рекомендуется использовать с Lua внешний редактор кода и внешний же сборщик карты. Это чревато маленьким неудобством в виде необходимости запускать карту на проверку только из внешней программы т.к. запуск из WE будет без значительной части кода в карте, но дает огромное преимущество в виде несравнимо более удобной работы с кодом.
К сожалению, пока слишком мало информации об этом на сайте.
Вариант NazarPunk, пока без сборки карты, код придется копировать в карту вручную.

Мой вариант, пока не рабочий т.к. перед релизом нужно исправить несколько багов, но включает в себя и работу с кодом и сборку карты, не нужно вручную копировать код в карту.
Даже здесь на сайте есть еще пара вариантов, но мне лень их искать
И немного саморекламы, как выглядели бы ответы на вопрос выше при использовании моего тулсета
  1. Использовать макрос RAW('A0E5'), который превратит равкод в число при сборке карты.
  2. Инжект в функцию main, с заменой оригинальной функции main на свою и вызовом оригинальной функции изнутри нашей.
  3. Аналогично ответу на этот вопрос для чистого WE, но без объявления переменных в WE т.к. то уже не так удобно становится когда код во внешнем редакторе.

Теперь о точках входа и инжекте.
Луа позволяет делать такой финт ушами
do
  local f = FunctionName -- записываем функцию в переменную
  function FunctionName() -- заменяем оригинальную функцию своей
   f() -- вызываем оригинальную функцию из переменной
   -- здесь могла быть ваша реклама или ваш код
  end
end
Это позволит нам сохранить оригинальную функцию в переменную, заменить оригинал своей функцией и вызвать оригинал из переменной. Применимо к любой функции, которая была объявлена раньше, не работает если функция объявлена после выполнения этого кода. Для создания точки входа отлично подходит InitGlobals, она всегда объявляется раньше кастомного кода в WE и вызывается из main.

У себя в коде я пользуюсь немного более сложным способом, этот код не будет работать в WE т.к. цепляет main, а не InitGlobals и не дает серьеных преимуществ перед описаным выше, привожу просто для расширения кругозора
local function InjectMain()
    local alpha_main = main
    return function()
        local alpha_init = RunInitializationTriggers
        RunInitializationTriggers = function() end
        alpha_main()
        InitLibraries() --моя функция, которая должна быть выполнена после всего, но до триггеров инициализации карты
        alpha_init()
    end
end
main = InjectMain()
ответ
ну не обнулили g
во-вторых, не привязали группу при ее создании к выбранному юниту. Короче, это уже ошибка.
    if g == null then
        set g = CreateGroup()
		//надо в хэш на зэндл выбранного записать группу
		set g = null //переменная - это просто ссылка
    endif
при смерти овцы удаляем ее из группы
при смерти выбранного юнита удаляем группу
может стоит подумать сделать на всю игру одну группу овечек или вообще обойтись без группы. будет фиксировать заход/выход овцы. На каждого выбранного заводим счетчик. А каждой овце привязываем выбранного. Когда овца умирает, то зная к кому привязана, у выбранного понижаем счетчик.
ответ
В целом не нужно, я думаю, если ты все поля при создании структуры инициализируешь (я не уверен обнуляет ли их аллокатор)
Структура просто integer потому что в коде в итоге генерирутся параллельные массивы т.е. например
real array cord_x
real array cord_y
real array cord_z
unit array cord_u
Для каждого члена структуры. Поэтом сама cord это просто индекс в эти массивы. Когда ты делаешь cord.create() находится свободный индекс в этих "параллельных" массивах и помечается заполненным.

23

» WarCraft 3 / Восстановление маны в колодцах

Похожие вопросы:

ответ
8gabriel8:
Это тот же принцип для второго пункта, мне казалось, что могут быть способы изящнее. Лучше по другим пунктам подскажите.
первый вопрос так и не понял, насчет третьего вопроса:
там весь прикол в ивентах, есть начало когда наводишь на цель, тогда даже анимация не проигрывается и мана не забирается.
Приводит в действие это уже когда ману сняло и проигралась анимация.
Где то был текст на всё это, но я не могу найти.
Ну а далее чекаешь уровень бафа у цели, если он больше 0 - значит хиляешь и удаляешь баф
Хотя возможно это я неправильно понял, можно просто отловить начало каста абилки и восстанавливать ману триггерно.

23

» WarCraft 3 / Алгоритм построения юнитов

Похожие вопросы:

ответ
AgaraSatan, так и думал.
там нужно не тип "исследуемый юнит", там другая переменная "переключаемый юнит (англ. triggering unit)". Исследуемый юнит - работает при событии юнит изучает/исследует. у тебя условие просто не прокатывает. делай дебаги

23

» WarCraft 3 / Баффы и Дебаффы

Похожие вопросы:

ответ
К несчастью большинство ативок не стакается, сильный бафф подавляет более слабый (к примеру замедление), некоторые просто заменяют старый бафф новым (яды), поэтому триггерные баффы делаются на основе аур, идеально для негативных баффов подходит 'Aasl' - Аура замедления (торнадо), у ней нету иконки, поэтому ей можно просто добавить юниту, не морочась с запрещенными спелбуками.
Нужно подсовывать ауру для баффа и постоянную невидимость волков юниту, а триггерно проверять все параметры и удалять эту ауру и постоянную невидимость.
В качестве активки у кастера используй обычный канал.
ответ
Ты никак не заставишь одиноаковые заклинания стакнуться. Делай спеллы-пустышки, баффы вешай аурами, которые потом будешь удалять, эффекты заклинания делай триггерно. Иначе никак.
Единственное, что ещё, применимое именно к лечению - можно создавать несколько фонтанов жизни или юнитов с их способностью и регенить сильнее за счёт одной и той же способности.
ответ
Замедление через аура на юнита Aasl , которая работает тлько на себя и выдается и снимается триггерно
ответ
  1. нет нельзя, т.к баффы это внутриигровые триггеры, которые привязаны к конкретному юниту.
  2. то что весит в статусе - это тупо визуалка, можно взять яд стрелы и указать в настройках бафы другой абилки и пожалуйста, вот вам бафф который ничего не делает.
ответ
Так же как и 1000 раз до этого

23

» WarCraft 3 / GUI – Не работает условие?

Похожие вопросы:

ответ
Действие то увеличивает модель, вот только ты увеличиваешь в % от ОРИГИНАЛЬНОГО размера, то есть ты каждый раз ему задаёшь одну и ту числовую величину. Если ты хочешь чтобы юнит каждые ХХ секунд рос по 20%, то следует завести переменную, изначально пусть она будет 100, а каждый раз увеличиваться на 20 и размер юнита делай равным этой переменной.
ответ
Можно передать, через хэш таблицу.
ответ
Вот держи. За подробностями в вк можешь обратится и если такое дело помогу доработаю систему на jass ( мой вк - vk.com/id446544976 )
ответ
Был недавно вопрос. Можно поставить дистанцию получения автоприказа на 0 или дать классификацию Рабочий.

23

» WarCraft 3 / Вопрос по редактору карт

Похожие вопросы:

ответ
The Dude, это несерьезно. Все вопросы описаны в большом количестве статей здесь, на нашем сайте - xgm.guru/p/wc3/articles. То, что перечисляешь не верх мастерства WE, а базовые знания. Материалов предостаточно. Успехов в обучении.
ответ
ZeroCaty:
Окей. Я понял, у тебя всё по дефолту. Я имел в виду параметры, которые влияют на то, где, как и когда ИИ строит здание. Немного наврал, там не тип использования, там тип расположения.
ответ
~8gabriel8:
Декорациями с текстурами тайлов покрывать поверхность. TassAvadar выкладывал подобный ресурс xgm.guru/p/wc3/tilemodel
ответ
LainMikoroso, Сценарий - > Параметры Карты -> Нестандартное освещение (Ставим галочку) -> Выбираем подходящее
совет: учите инструментарий, без этого никуда
ответ
Всё всем спасибо я разобрался , это было куда элементарнее чем я думал и даже триггеры не надо

23

» WarCraft 3 / Button Manager Reforged

Похожие вопросы:

ответ
У меня все получилось. Просто нужно закрасить центр пустое пространство белым, а не оставлять прозрачным. Прога видимо сама альфа канал накладывает.
Вот, наложил рамку на иконку

23

» WarCraft 3 / Отрицательный эффект предметам

Похожие вопросы:

ответ
EnergyFrost:
Вы сделали что-то криво. Протестил, все работает.
Давайте скрин самого спелла в РО. Скрин предмета в РО.
Все я понял, у меня у юнита которого хотел замедлить стоит: Макс. скорость 260, Норм скорость: 260 и Мин. скорость: 260. И по этому не выходило.
ответ
PT153:
Зачем ты даёшь предмет?
Если предмет используется сразу при поднятии, то его нужно удалить.
Ну и желательно сделать с таймером, а не паузой.
Здравствуйте)
Даю пустой предмет, который используется сразу при поднятии (как книги), что бы он запустил следующий триггер.
Ибо даже не подумал про таймеры, а через паузу в одном триггере всё это уместить не получилось.
Спасибо за совет, попробую всё сделать иначе!)

23

» WarCraft 3 / Стандартные войска

Похожие вопросы:

ответ
Похоже, что никак. Смена владельца точно не помогает =)
ответ
function MeleeStartingAI takes nothing returns nothing
    local integer index
    local player  indexPlayer
    local race    indexRace

    set index = 0
    loop
        set indexPlayer = Player(index)
        if (GetPlayerSlotState(indexPlayer) == PLAYER_SLOT_STATE_PLAYING) then
            set indexRace = GetPlayerRace(indexPlayer)
            if (GetPlayerController(indexPlayer) == MAP_CONTROL_COMPUTER) then
                // Run a race-specific melee AI script.
                if (indexRace == RACE_HUMAN) then
                    call PickMeleeAI(indexPlayer, "human.ai", null, null)
                elseif (indexRace == RACE_ORC) then
                    call PickMeleeAI(indexPlayer, "orc.ai", null, null)
                elseif (indexRace == RACE_UNDEAD) then
                    call PickMeleeAI(indexPlayer, "undead.ai", null, null)
                    call RecycleGuardPosition(bj_ghoul[index])
                elseif (indexRace == RACE_NIGHTELF) then
                    call PickMeleeAI(indexPlayer, "elf.ai", null, null)
                else
                    // Unrecognized race.
                endif
                call ShareEverythingWithTeamAI(indexPlayer)
            endif
        endif

        set index = index + 1
        exitwhen index == bj_MAX_PLAYERS
    endloop
endfunction
ответ
Лучше не надо т.к. ИИ просто сломается. У него всё до мелочей рассчитано.
Можно сделать так, что бы ты мог управлять ИИ, но он постоянно будет что-то строить и каждую секунду управлять своими войсками, так что ты не сможешь им нормально управлять.
ответ
  1. Я бы просто брал большой диапазон рандома (порядка 1000) и потом просто делил результат для получения нужного элемента. Этого обычно более чем хватает - условия и вспомогательные функции не нужны, только арифметика.
  2. Раз уж в дело пошли диапазоны - можно сразу запилить взвешенный рандом вместо обычного - когда у каждого элемента в списке есть свой вес примерно определяющий насколько чаще других этот элемент будет выбираться.

23

» WarCraft 3 / Аниме карты для REFORGED

Похожие вопросы:

ответ
Читал новое пользовательские соглашение? Потом разжевывали на одной из тем по патчам рефорджа. Близзарды перестраховались, и теперь низя в карту контент пихать, который не твой или свободно распростроняемый, в противном случае хоть 1 жалоба на твою карту - бан, любой мудак которому че-то не понравится может написать близардам, они не будут разбираться он хозяин контента или нет.
Правообладатели нарут и прочих аниме прав тебе никогда не дадут, даже разговаривать не будут, только юр. Лицаи только много денег, бомжи вроде нас с тобой им не интересны. Но при этом за спасибо тебе никто не даст прав делать карту в которой все бы бесплатно играли.

23

» WarCraft 3 / нужны модели

Похожие вопросы:

ответ
Поиск по сайту, если не нашлось, сперва сюда:
Потом сюда:

В следующий раз за такие темы будут варны.
ответ
Уважаемый пользователь! Спешу вас предупредить что есть такая вещь как поиск, вот за 5 минут на сайте нашол:
Если еще немного покопатса на сайте в разделе декораций - можно нагрести кучу добра!
И вобще мой вам совет - научитесь минимальному моделингу: сможете клепать такие вещи за 3 минуты на коленке с необходимым вам видом, формой и текстурой.
ответ
XGM Bot:
Похожие вопросы:

ответ
Поиск по сайту, если не нашлось, сперва сюда:
Потом сюда:

В следующий раз за такие темы будут варны.
ответ
Статьи по конвертации из других игр в самом низу
Тема для заказа на модели
ответ
Есть ссылка на подходящую тему: xgm.guru/p/wc3/needmodels
ответ
это Q/A
тут разрешены только вопросы
в следующий раз за заявки типа "сделайте мне что либо" пойдут варны
ответ
Уважаемый пользователь! Спешу вас предупредить что есть такая вещь как поиск, вот за 5 минут на сайте нашол:
Если еще немного покопатса на сайте в разделе декораций - можно нагрести кучу добра!
И вобще мой вам совет - научитесь минимальному моделингу: сможете клепать такие вещи за 3 минуты на коленке с необходимым вам видом, формой и текстурой.

ответ
ответ

почему тайдхантер.. пришлось гуглить шо это значит

23

» WarCraft 3 / Проблема с Warcraft III 1 31

Похожие вопросы:

ответ
~8gabriel8:
Надо было бы карту приложить, чтобы другие с патчем 1.31 могли проверить, будет ли у них запускаться.

23

» WarCraft 3 / Отдельная панель

Похожие вопросы:

ответ
Нинадо бж, это не переменная а функция
local unit u = GetEnumUnit( ) 
ответ
S2I принимает строку в качестве параметра и никак её не изменяет
с чего вдруг он должен создавать новые строки?
I2S создаёт временную строку
если в таблице есть строка равная временной по хэшу то он возвращает строку из таблицы
если в таблице строки нету то он добавляет нашу временную строку в таблицу
т.е. обычный алгоритм хэширования
ответ
  1. Ищите вопросы с GetLocalPlayer в названии.
  2. Ответ дали выше.
ответ
Он лежит на случай если игре необходим данный реф. В РО ты мог иногда видеть необходимое приложение и варианты small, medium и large. Также по возможности спецэффекты и эффекты способностей могут к ней крепиться.
А collission насколько я помню отвечает за выделение или за столкновение летающих юнитов. На всякий случай оставляй, а то мало ли, да и места много не просит.
ответ
~8gabriel8:
8i728v5:
Я честно сомневаюсь, что тебе это поможет найти ответ на мой вопрос. (Прикрепил!)
В РО в возможных способностях юнитов стоит Носильщик (человек), там 2 ячейки для переноса, убери это и будет срабатывать с первого раза.

23

» WarCraft 3 / Не работают абилки на + ХП

Похожие вопросы:

ответ
У меня есть один ресурс, называется "заклинатель духов" там задействована эта абилка. Посмотри, разберись что к чему. Ибо насколько я могу судить, ты скорее всего забыл добавить абилку герою в которого превращается паладин, и забыл указать в абилке пути метаморфоза. Но насколько я понял, тебе нужно просто заставить героя менять облик, иными словами чтобы он становился другим героем. Тогда лучше использовать мет. друида медведя. Мет. демон хантера рассчитан как усиливающая способность, в идеале она не подходит на 100% для обычной смены облика как у друида медведя.
ответ
В 1.31 завезли генератор этих "ссылок". Но обычно реально проще вручную указать нужные значения.

23

» WarCraft 3 / Поднять предмет

Похожие вопросы:

ответ
Хотя ответ уже был дан, я всё-равно опубликую свою наработку.
Работает так:
  1. В массивы заносятся необходимые данные.
  2. При использовании предмета запускается цикл, который находит предмет из массива.
  3. В зависимости от текущего и максимального уровня способности (последнее указывается в отдельном массиве) выполняются необходимые действия.
Конкретные и подробные объяснения находятся в комментариях к триггерам.
+
legroy,
Ваш пример слишком примитивен. Не учитывается, например, что изучаемых таким образом способностей может быть не один десяток и может возникнуть потребность в удобном наполнении. И что у способности может быть максимальный уровень.
ответ
Я думаю используя руну. Делать предмет в виде руны, отлавливать её использование и проверять предметы в инвентаре. Если есть нужные, то скрещивать, если нет, то создавать новую руну на земле такого же типа.
ответ
XGM Bot:
Похожие вопросы:

ответ
пикнутый итем это для цикла
а у тебя тут должен быть манипулятед итем
ответ
ворлдэдит=>Файл=>Параметры=>Общие=>Разрешить использ. отриц. значений в Редакторе Объектов.
Изменяешь значение после Шифт+Энтер. Способности приписываешь через запятую названиями переменных (показать ид - Контрол+Ди).
ответ
Так ты же выключаешь триггер на 18 секунд вот он и не срабатывает.
Поставь условие, что герыч не имеет абилки-пустышки, если не имеет - дать её и через 18 сек забрать и пустить молнию.
Правда я не уверен насчёт того, отловится ли attacking unit через 18 сек вейта, проверь...
Вообще, если устраивает орбом - то даёшь "сферу молний" с эффектом "цепь молний", у которой 18 сек перезарядка(у цепи не у сферы)
ответ
предмет это просто иконка которая содержит способности
книга заклинания это способность
и редактировать нужно способность "книга заклинаний"
или создать на её основе новую способность "моя книга заклинаний"
а потом у предмета просто указать способность "моя книга заклинаний"
если не хватает знаний то их можно пополнить в статьях
думаю первых 200 статей хватит чтобы создать несложную карту
ответ
Первый вопрос. Проблема с триггерным перемещением возникает, если скорость объекта, движение которого подразумевается, равно 0. Поставь 1 и будет тебе счастье. Есть интересный способ обездвижить юнита. Это через SetUnitPropWindow. Поставь в аргументы юнита и число 0 и он перестанет двигаться.
Второй вопрос. В характеристиках твоего dummy-юнита в РО(редактор объектов) выставь поле: Наводка (контрольный радиус) (uerd) и поставь значение 0.00. Юнит не будет поворачиваться при выстреле.

ответ
Нужно дополнительно ещё отлавливать потерю предмета
Допустим герой теряет маску смерти, записываешь этот предмет в переменную
... ну а дальше что-то типа ждать 0.1 сек и очистить переменную (коряво, но должно работать)
Герой получает маска смерти И этот предмет является записанным в переменную
Значит он был только что выброшен другим героем и тут же поднят этим == передача...
вообще, скорей всегда есть какой-нибудь ордер выброса предмета из слота 1-6, что собственно и нужно отлавливать, а то что я описал выше - очень корявый костыль.
. . . ПИЩА ДЛЯ РАЗМЫШЛЕНИЙ . . .
Как минимум, есть смысл искать положение предмета, т.к. если ты его выбрасываешь - его положение становится очевидным (его координаты), а если подбираешь и носишь с собой - его положение является тем самым, которое было в момент подбора (как ни странно, но всё же логично).
И вот если герой подбирает предмет, который чисто физически находится от него ОЧЕНЬ далеко, и он НЕ СМОГ бы САМ его поднять... вот тогда имеет смысла задуматься о том, как он его получил...
... в добавление к этому, можно вообще организоваться всё таким образом, что ВСЕ ПОДОБРАННЫЕ предметы автоматически выкидываются на какой-нибудь край карты (что с технической стороны не очень-то и правильно, но всё же), и перемещаются заново куда нужно при выбросе (это стандартный механизм). В при получении предмета проверять где он находится - если на краю карты = он был в инвентаре. Иначе - на земле около героя.
При этом есть ещё один нюанс - когда герой теряет предмет он всё ещё владеет этим предметом (такой ответ возвращает проверка).
ответ
~8gabriel8:
Если / Тогда / Иначе, Функции
В Если Герой - (Предмет, которым манипулируют) у (Переключающий юнит) равно Да, в Тогда все твои действия в этом триггере.
Или Герой - (Переключающий юнит) имеет (Предмет, которым манипулируют) равно Да

23

» WarCraft 3 / Вопрос по редактору объектов

Похожие вопросы:

ответ
Ну, тогда через РО больше никак. Есть другие способы.
ответ
Ты добавлял кости? Или через "повышение урона (улучшение)"? Значение последнего у юнита помечено — это добавится "базовый урон".
ответ
"Приоритет" для ИИ, "Построение" отвечает за расположение в отряде (когда выделяешь группу юнитов на карте: герои, ближние, дальние и т.д.)
ответ
Отлично, значит мы можем однозначно соотнести номер игрока с юнитом в массиве?
  • переключившихся в летающий режим героев добавляем в глобальную группу
  • запускаем таймер на малом периоде, что-то около 0.04, который перебирает всех в группе и выполняет смещение к взятой из массива точке со скоростью движения героя (тут можно экспериментировать с разными алгоритмами движения, главное что все данные мы можем легко получить из массива по номеру игрока которому принадлежит юнит)
  • отслеживаем все приказы для героев в состоянии полета и на основе этого запоминаем текущую точку куда юнит должен двигаться и прочие данные, записываем эти данные в массив
  • при отключении полета убираем героя из группы и перестаем отслеживать его приказы

А, т.е. в карте уже есть системы триггерного движения? Значит самое время унифицировать их в одну, чтобы одна и та же система управляла и полетом и физикой и другими видами триггерного движения.
ответ
PT153:
Файл - экспорт всего РО, открываешь свою карту Файл - импорт всего РО. Если нужно слияние, то может помочь Grimoire, что в комплекте с JNGP идёт, но я им не пользовался.
Как именно может помочь? Сейчас скачал JNGP, и толком не пойму как это дело провернуть, чтобы не было замены объектов которые я создавал теми что импортирую.

Я наконец-то смог найти то что нужно, благодаря помощи нескольких чуловеков.)
Благодарю всех кто мне помогал.

23

» WarCraft 3 / Модели на заказ

Похожие вопросы:

ответ
это Q/A
тут разрешены только вопросы
в следующий раз за заявки типа "сделайте мне что либо" пойдут варны
ответ
datalovaa, если речь о моделях на Варкрафт, то смысла вообще от платных заказов нет, проще научиться самому это делать, а если речь о 3д моделях, то есть сайты фриланса, где ты можешь получить все ответы по вопросам цены такой работы, но учитывай, что скорее всего у тебя не хватит денег оплатить их работу)
На сайте Эльрат делал модели платно, а также на хайве можешь обратиться.
ответ
XGM Bot:
Похожие вопросы:

ответ
Прятать юнита, создавать дамми с нужными способностями. Если никто не сделает, возможно вечером попытаюсь (сейчас у меня утро) сделать.
ответ
это Q/A
тут разрешены только вопросы
в следующий раз за заявки типа "сделайте мне что либо" пойдут варны

ответ
~8gabriel8:
Определил причину невидимости модели после сохранения в war3me. В Geoset Animation Manager должна стоять Alpha 1, а он почему-то делает 0 или -1.

Поставил в Geoset Animation Manager не глобальные Color и Alpha, а для первых кадров всех 6 анимаций. Стало всё нормально и триггерные костыли не нужны.
Модель красного свечения ауры на юнитах:
Карта с этой аурой:
А отредактировать mdx в HEX-редакторе не сумел.
ответ
всё то ты описал нужно делать не только в аниме картах, а в любом качественном проекте 2020 года
А вообще автор пропал, походу уже нашёл помощников

23

» WarCraft 3 / Ищу движение на WASD как в Blood Omen: Legacy of Kain

Похожие вопросы:

ответ
это морф, детка :D
ответ
Думаю, можно обойтись без тайлов.
Нужно сделать ето в JNGP.
Когда юзаеш способность, то сохраняєш координати точки, на какую юзнул способность (AbilityTarget),
тогда проверяєш тип проходимости для нее: если проходимо для летающих и не проходимо для пеших и проходимо для земноводных, то ето вода, тогда с некоторим шансом создаеш рибу.
ответ
Например.

Сейчас бы сделал несколько по-другому, но в целом подход остался бы схожим.
ответ
Slashur, вы даете
call CreateUnitAtLoc(GetTriggerPlayer(), udg_ItemID, udg_temp_point, 0)
изменяете на
call CreateUnitAtLoc(GetTriggerPlayer(), udg_ItemID, udg_temp_point, 270)
всего 1 строчку. всего 1 аргумент. с нуля на 270 поменял и все. стандартное ориентация зданий = 270 град, записана в переменную.
хотел чтобы вы сами помучались. пробуй брать гуи,конвентировать в код. сравнивали. пример
статьи читали бы.
ответ
При осмотре карты тоже не совсем понял почему игра перестает строительство. Как решение, ты можешь даммику строительства поменять расу на нежить, таким образом уже здание само будет достраиваться.
Поскольку у тебя на карте при беглом осмотре юнитов строителей я не заметил, то выше указанное решение как раз то что нужно тебе.
П.С.
Под какую версию игры рассчитана данная карта?

23

» WarCraft 3 / Не открывается карта (Jass New Gen Pack Rebuild)

Похожие вопросы:

ответ
Я не уверен, но возможно функция DestroyTrigger есть в JNGP 5d exp.2, но нет в JNGP твоего друга? Пусть он попробует открыть карту в JNGP 5d exp.2.
ответ
Варианта два - допротектили карту либо у тебя преаддоненый варик. Чаще встречается первое.
ответ
JNGP снимает ограничения (например максимум декорации 20к), если обычным редактором открыть критует. В jngp есть новые гуишные функции, которых нет в обычном, стандартный редактор их не распознает. Юзайте поиск, такой вопрос уже задавали
можно вместо новых триггерных команд юзать нативки. Писать например через Custom Script или вообще на jass
ответ
Если автоматические бекапы отключены и нет копии нигде, то с картой можно попрощаться - обычно восстановлению битый архив карты не поддается.
ответ
карта "защищена"
простыми способами нельзя переводить и вообще в редакторе открывать, в теории можно в редакторе открыть, но нужен полный листфайл, который надо часами/днями восстанавливать специальной утилитой (а судя по тому что там сотни неизвестных файлов, на это уйдет очень много времени)

Ну и конечно есть ещё вариант - это редактирование scripts\war3map.j и war3map.wts
Первый это скрипт карты, через поиск " можно найти все строки
Второй это хранилище строк
НО
Ещё придется редактировать объектные файлы: w3a, w3u, w3t и т.д., полный список есть в статьях по форматам данных
А если в редакторе карту не открыть без последствий - то придется пересаживать эти объектные файлы в другую карту (вместе с war3map.wts, т.к в объектных файлах могут ссылки на строки), там всё перевести и перекинуть обратно в исходник

23

» WarCraft 3 / Создание ролика

Похожие вопросы:

ответ
call EnableUserUI(false)
Это, насколько я помню.
ответ
Полезная информация- может пригодиться при создании ролика
фильтры - xgm.guru/p/wc3/filters
камера - www.hiveworkshop.com/threads/cameras.160369 И еще
ответ
проблема вызвана использованием гетлокалплеера
для того чтобы избавится от проблемы надо избавится от локальных действий
К.О.
ответ
~8gabriel8:
Заинтересовался и решил попробовать сделать. Для скорости взял Торнадо (замедление), где поставил вместо отрицательного модификатора положительный, а для восстановления здоровья ауру фонтана жизни. Сделал три триггера для способности, плюс триггер на случайное движение войск:
  • Инициализации триггер при изучении способности добавляет герою ауру замедления, которая на самом деле ускоряет, просто поленился менять описание. Этот триггер надо отключить после использования, добавив действие Turn off (This trigger);
  • Первый триггер должен был убирать ауру замедления и давать ауру восстановления, но у меня никак не получалось указать правильное событие для способности, срабатывали одновременно и первый, и второй триггеры. Тогда я поставил в событие приказ без указания цели, указал в условии immolation, всё стало нормально функционировать;
  • Второй триггер наоборот убирает ауру замедления и даёт ауру восстановления при приказе unimmolation.
Кроме того, что эта способность является приказом, интересно и то, что аура восстановления не действовала, если её просто скопировать в нестандартные способности, ничего не изменив, а аура замедления не действовала, если изменить её радиус действия с 600 до 900.
P. S. Там ещё триггер надо сделать, когда у героя мана заканчивается для применения способности, так как аура восстановления не пропадает, а аура замедления не появляется.
ответ
Rare, Если зайдешь в игру в автономном режиме (в оффлайне), то с редактора он будет открываться именно в таком

23

» WarCraft 3 / Не работает способность

Похожие вопросы:

ответ
В натуре баг такой? Проверил только что. Улучшение эльфам можно не делать на доспехи. Короче эльфы читеры
ответ
Потому что вы блокируете мультишот. Запрет спеллбука не запрещает способности, находящиеся в нем. Но запрет самих способностей, внезапно, запрещает их.
ответ
Автокастовые способности не работают у активных предметов.Сам каст абилку нужно делать триггерно дамиком, а способностях предмета пустышка через Канал
ответ
Прочитал в другой теме, что это и правда нереально, стандартный ИИ не знает канал.
ответ
Оказывается я сначала скопировал триггер, а потом способку и из-за этого триггер ее не видел